﻿namespace GX
{
    static public class ModuleManager
    {
        static IModuleManager _mgr;
        static IModuleManager mgr
        {
            get
            {
                if (null == _mgr)
                    _mgr = App.GetService(App.SERVICE_MODULE_MANAGER) as IModuleManager;
                return _mgr;
            }
        }
        static public bool AddModule(IModule module)
        {
            return mgr.AddModule(module);
        }
        static public IModule GetModule(int id)
        {
            return mgr.GetModule(id);
        }
        static public void InvokeModule(int moduleID, int type = 0, object arg = null)
        {
            mgr.InvokeModule(moduleID,type,arg);
        }
        static public void InvokeModules(int type = 0, object arg = null)
        {
            mgr.InvokeModules(type,arg);
        }
    }
}
